iT邦幫忙

2024 iThome 鐵人賽

DAY 21
0
自我挑戰組

Leetcode 解題之旅:逐日攻克系列 第 21

每日一LeetCode(21)

  • 分享至 

  • xImage
  •  

633. Sum of Square Numbers

題目敘述:

Given a non-negative integer c, decide whether there're two integers a and b such that a2 + b2 = c.

class Solution {
public:
    bool judgeSquareSum(int c) {
        for (int divisor = 2; divisor * divisor <= c; divisor++) {
            if (c % divisor == 0) {
                int exponentCount = 0;
                while (c % divisor == 0) {
                    exponentCount++;
                    c /= divisor;
                }
                if (divisor % 4 == 3 && exponentCount % 2 != 0) {
                    return false;
                }
            }
        }
        return c % 4 != 3;
    }
};

上一篇
每日一LeetCode(20)
下一篇
每日一LeetCode(22)
系列文
Leetcode 解題之旅:逐日攻克30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言